package com.ethink.order.api.info;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.Date;

/**
 * TOC销售单 INFO实体
 *
 * @author default
 * @date 2022-11-22
 */
@Data
public class SaleOrderInfo {

    @Schema(description ="主键")
    private Long id;

    @Schema(description ="销售单号")
    private String orderNo;

    @Schema(description ="枚举 订单类型:1-预售单(t1)|2-批量导入(t2)|3-手工建单(t3)|4-吉客云导入(t4)")
    private Integer orderType;

    @Schema(description ="枚举 订单状态:1-草稿(s1)|2-已提交(s2)|3-审批通过(s3)|4-完成(s4)")
    private Integer orderStatus;

    @Schema(description ="PO单号")
    private String poOrderNo;

    @Schema(description ="订单来源")
    private String saleChannel;

    @Schema(description ="订单来源下级")
    private String saleSubChannel;

    @Schema(description ="制单人账号")
    private String createUserCode;

    @Schema(description ="制单人名称")
    private String createUserName;

    @Schema(description ="仓库code")
    private String subWarehouseCode;

    @Schema(description ="仓库名称")
    private String subWarehouseName;

    @Schema(description ="网店订单号")
    private String shopOrderNo;

    @Schema(description ="网店code")
    private String shopCode;

    @Schema(description ="网店名称")
    private String shopName;

    @Schema(description ="货币编码")
    private String currencyCode;

    @Schema(description ="货币名称")
    private String currencyName;

    @Schema(description ="枚举 结算方式:1-先款后货(t1)|2-先货后款(t2)|3-分期付款(t3)|4-其他(t4)")
    private Integer settleModel;

    @Schema(description ="收款公司账户银行名称")
    private String bank;

    @Schema(description ="收款公司账户账号")
    private String account;

    @Schema(description ="收款公司code")
    private String settleCompanyCode;

    @Schema(description ="收款公司名称")
    private String settleCompanyName;

    @Schema(description ="客户编码")
    private String customerCode;

    @Schema(description ="客户收货人")
    private String customerName;

    @Schema(description ="客户收货地址")
    private String customerAddress;

    @Schema(description ="客户联系电话")
    private String customerPhone;

    @Schema(description ="下单日期")
    private Date orderTime;

    @Schema(description ="发货时间")
    private Date deliveryTime;

    @Schema(description ="枚举 付款方式:1-银行收款(t1)|2-现金收款(t2)|3-货到付款(t3)|4-第三方付款(t4)|5-第三方付款抵扣(t5)")
    private String payModel;

    @Schema(description ="第三方名称")
    private String thirdPayName;

    @Schema(description ="枚举 交付方式:1-客户自提(t1)|2-送货到仓(t2)|3-韩货自提(t3)")
    private String giveModel;

    @Schema(description ="枚举 交付类型:1-直接交付(t1)|2-指示交付(t2)")
    private String giveType;

    @Schema(description ="交付日期")
    private Date giveTime;

    @Schema(description ="数据删除标志(0-正常,1-删除)")
    private Integer isDeleted;

    @Schema(description ="数据创建时间戳")
    private Date createTime;

    @Schema(description ="数据更新时间戳")
    private Date updateTime;

    @Schema(description ="创建人")
    private String createUser;

    @Schema(description ="修改人")
    private String updateUser;

    @Schema(description ="备注信息")
    private String remark;

    @Schema(description ="主仓编码")
    private String warehouseCode;

    @Schema(description ="主仓名称")
    private String warehouseName;

}
